ViewIt is designed to help you open and manage powerful Macintosh windows. Most of the topics in the "ViewIt" menu above deal with particular aspects of working with ViewIt windows: "Features" reviews the features supported by ViewIt, "Editing" describes support for on-line editing of windows, "Windows" explains how to open and manage new ViewIt windows, "Views" describes the use of views within ViewIt windows, and "Controls" describes controls that can be placed within views in ViewIt windows.
Once you've become comfortable with editing windows that contain views and controls, then read more advanced topics: "Data Links" describes how to link program variables to control values, "Balloons" describes how to attach balloon help to controls in ViewIt windows, and "Override" explains how to override the default behavior of existing controls.
The "Commands" topic presents a complete description of each command supported by ViewIt. "fRec Record" contains a brief description of each fRec record element. You'll usually only need to examine these topics to learn more about a particular command or fRec variable that has been referred to in some other topic.
The "Resources" topic discusses issues that you'll usually need to only consider when creating a finished, stand-alone application. Read it once to get a feeling for how resources can be managed, and then return to it when finished with a programming project.
To help you get a better feeling for what ViewIt can do, and why ViewIt is truly the simplest way to create powerful Mac windows, several of its major features are discussed briefly below.
No License Fees
ViewIt-related resources can be distributed with your applications as long as the simple guidelines presented in the "Legal Stuff" topic are followed.
Do Your Own Thing
ViewIt does not require the use of OOP (Object-Oriented Programming) or other advanced programming techniques. It works equally well with C, C++, Pascal, Object Pascal, Fortran, and other languages, as well as higher-level Mac programming environments. You choose the development environment that best meets your needs, then add the power of ViewIt to it.
Simpler Resources
Sophisticated Mac dialogs have evolved to require support from a myriad of resource types: WIND, DLOG, ALRT, DITL, CNTL, ictb, etc. ViewIt greatly simplifies this situation by combining all the information it needs to open a window into a single resource of type "FWND". It also eliminates the old distinction between "alerts", "dialogs", & "windows". Each of these is now just a special case of a ViewIt window.
On-Line Editing
Each window's FWND resource can be edited while running the program in which it is being used. There is no need to open a separate resource editing program to do basic ViewIt window editing (although such programs are still useful for general resource management and editing resources such as icons, cursors, etc.). Fonts, sizes, styles, colors, control types, positions, etc., can all be quickly and easily changed from within your own programs.
You can optionally make on-line editing a part of your finished applications. This can be useful in cases where you would like users to be able to customize text, styles, colors, etc., to fit their needs (varying color depths, screen sizes, languages, etc.).
Built-In Help
Each module includes its own built-in documentation that is quickly accessed from ViewIt help windows such as the one you are now reading. This documentation is easy for module developers to update, meaning that you'll be able to obtain the latest and greatest updates almost as fast as they are produced.
The built-in documentation is based on use of the "HelpCt" control type which is included with ViewIt. You can also use this control in your own windows to support on-line help.
Backward Compatible
ViewIt extends the Control Manager in a way that makes it compatible with existing CDEF-based controls and most of the Control Manager toolbox calls. It can also import DITL and CNTL resources directly into ViewIt windows, making it easy to convert existing dialogs for use with ViewIt.
Powerful Controls
ViewIt is shipped with a complete set of custom controls which are much more powerful than the standard CDEFs. This power is made possible by the fact that ViewIt breaks the artificial message and control record limits imposed on standard CDEFs by the Control Manager. ViewIt controls can be as simple as static text items, or as complex as fully functional text editors.
View Hierarchy
ViewIt supports a hierarchy of "views" in ViewIt windows, where each view can contain any number of controls. Views make it easy to support the scrolling or paging of groups of controls, operations which are difficult to accomplish in standard Mac dialogs.
Data Linking
ViewIt greatly simplifies the task of moving data in and out of windows. This "data linking" feature supports creation of a link between program variables and control values. Simple commands are then used to get or set values based upon these links, with ViewIt doing the work of converting data types when necessary. This makes it remarkably easy, for example, to link a real number in your program to an editable text control.
Source Available
The source code and development projects for all of the basic control-driving modules is available as part of the "Inside FaceWare" product. This makes it easy to modify and extend the behavior of the custom controls included with ViewIt. The source also serves as an excellent starting point for completely new projects.